<!doctype html>
<html>

<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
  <link rel="stylesheet" href="../../static/BOSGeo/BOSGeo.css" />
  <title>显示实体属性</title>
  <style>
    html {
      font-size: 12px;
    }

    html,
    body,
    #mapContainer {
      height: 100%;
      width: 100%;
      padding: 0;
      margin: 0;
    }

  </style>
</head>

<body>
  <div id="mapContainer"></div>
  <script src="../../static/BOSGeo/BOSGeo.js"></script>
  <script>
    var map = new BOSGeo.Map('mapContainer', {
    mapType: BOSGeo.TDT_IMAGERY
    });

    var label = new BOSGeo.Label();
    map.on('mousemove', (data)=> {
        label.setVisible(false);
        let obj = BOSGeo.GeoUtil.getPick(data, 'entity', 'POLYGON'); // type为entity、primitive两种 实体种类为
        //         /**
        //      * 点
        //      */
        //     POINT

        // /**
        //  * 文字
        //  */
        // TEXT

        // /**
        //  * 图标
        //  */
        // ICON

        // /**
        //  * htmlLayer
        //  */
        // HTML

        // /**
        //  * 线
        //  */
        // LINE

        // /**
        //  * 多边形
        //  */
        // POLYGON

        // /**
        //  * 矩形
        //  */
        // RECT

        // /**
        //  * 圆形
        //  */
        // ELLIPSE

        // /**
        //  * 管线
        //  */
        // PIPELINE

        // /**
        //  * 组合图形
        //  */
        // COMBINE_GRAPHIC

        // /**
        //  * 管道
        //  */
        // TUBE

        // /**
        //  * 圆柱体
        //  */
        // CYLINDER

        // /**
        //  * 立方体 box
        //  */
        // CUBE

        // /**
        //  * 长方体
        //  */
        // TRIANGEL

        // /**
        //  * 盒子
        //  */
        // BOX

        if (!obj || !obj.attribute) return;
        label.setPosition(data.x, data.y);
        label.setContent(obj.attribute);
        label.setVisible(true);
    });

    var layers = map.layers;
    var entityCollection = new BOSGeo.LayerCollection({
        name: '实体集合',
        type: 'entity'
    });

    layers.add(entityCollection);
    var entity = new BOSGeo.EntityLayer({
        name: '实体',
        type: 'polygon', // 实体类型。'line', 'polygon', 'rect', 'ellipse', 'pipeline' 'tube'
        position: [121.46665, 31.17088, 0, 121.4663, 31.16701, 0, 121.46384, 31.1663, 0, 121.46351, 31.16834, 0, 121.46665, 31.17088, 0],
        // width: 6,
        height: 0,
        radius: 20,
        color: '#76f90d',
        attribute: 'aaaa',
        // show: false,
        // opacity: 0.6,
        onClick: layer => {
            // layer.zoomTo();
        }
    });
    entityCollection.add(entity);
    map.flyToEntity(entity.feature, 2);
  </script>
</body>

</html>